/**
 * Create by CaoWenjian
 *
 * @copyRight: 2018
 **/
package com.bjboot.caocao.common.service;

import com.bjboot.caocao.system.domain.DictDO;
import com.bjboot.caocao.system.domain.UserDO;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 *@Description 字典的service层interface
 *@Author 操文健
 *@Date 2018-09-07 上午11:01
 *@Version 1.0
 **/
@Service
public interface DictService {

    DictDO get(Long id);

    List<DictDO> list(Map<String, Object> map);

    int count(Map<String, Object> map);

    int save(DictDO dict);

    int update(DictDO dict);

    int remove(Long id);

    int batchRemove(Long[] ids);

    List<DictDO> listType();

    /**
     * 根据类型和value查询对应的name
     * @param type
     * @param value
     * @return
     */
    String getName(String type,String value);

    /**
     * 根据用户获取爱好列表
     * @return
     * @param userDO
     */
    List<DictDO> getHobbyList(UserDO userDO);

    /**
     * 获取性别列表
     * @return
     */
    List<DictDO> getSexList();

    /**
     * 根据type获取数据
     * @param type
     * @return
     */
    List<DictDO> listByType(String type);
}
